home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 090 / bowling.arc / RECORDP.BAS (.txt) < prev    next >
Encoding:
GW-BASIC  |  1985-07-12  |  4.1 KB  |  113 lines

  1. 10  REM PRINT TEAM AND BOWLER RECORD SHEETS      (RECORDP)
  2. 12  REM Developed by William W. Klaproth,  Moraga Ca.  94556    September 1982
  3. 20  REM MASTER FILE DESCRIPTIONS FOR ALL BOWLING PROGRAMS
  4. 30  OPEN "B:TEAMS.HDR" AS #1 LEN = 64
  5. 40  FIELD #1, 2 AS TM$, 30 AS NAM$, 2 AS RCNT$, 2 AS GAM$, 4 AS PINS$, 2 AS AVG$, 2 AS HIG$, 2 AS HIS$, 4 AS PTSW$, 4 AS PTSL$, 2 AS B1ID$, 2 AS B2ID$, 2 AS B3ID$, 2 AS B4ID$, 2 AS B5ID$
  6. 50  FIELD #1, 2 AS HDRID$, 30 AS LEAGUE$, 2 AS WEEKS$, 2 AS TEAMS$, 4 AS FILLER$, 2 AS BWLPERTM$, 2 AS NXTID$, 2 AS HCPBASE$, 4 AS HCPPCNT$
  7. 60  OPEN "B:BOWLERS.HDR" AS #2 LEN = 64
  8. 70  FIELD #2, 2 AS BBO$, 30 AS BNAM$, 2 AS BRCNT$, 2 AS BGAM$, 4 AS BPINS$, 2 AS BAVG$, 2 AS BHIG$, 2 AS BHIS$, 2 AS BHCP$, 2 AS BHIGH$, 2 AS BHISH$, 2 AS BTM$,2 AS GAM2$, 2 AS SER5$, 2 AS SER6$,2 AS CURSER$,2 AS AVGLSTYR$
  9. 80  OPEN "B:TEAM.DET" AS #3 LEN = 16
  10. 90  FIELD #3,2 AS DTM$, 2 AS TMO$, 2 AS TDAY$, 2 AS TG1$, 2 AS TG2$, 2 AS TG3$, 2 AS TSER$, 2 AS DPTSW$
  11. 100  OPEN "B:BOWLER.DET" AS #4 LEN = 16
  12. 110  FIELD #4,2 AS DBO$, 2 AS BMO$, 2 AS BDAY$, 2 AS BG1$, 2 AS BG2$, 2 AS BG3$, 2 AS BSER$
  13. 120  REM OPEN "B:HISCORES.DET" AS #5 LEN = 16
  14. 130  REM FIELD #5, 2 AS HBNO$, 2 AS HG1$, 2 AS HG2$, 2 AS HG3$, 2 AS HSER$, 1 AS HFLG1$, 1 AS HFLG2$, 1 AS HFLG3$, 1 AS HFLGS$
  15. 140  CLS
  16. 150  PRINT "TEAM AND BOWLER RECORD SHEET PRINT PROGRAM"
  17. 160  PRINT " "
  18. 170  INPUT "ENTER DESIRED PRINT OPTION: A=ALL; T=TEAMS; B=BOWLERS; Q=QUIT :",OP$
  19. 180  IF OP$ = "A" OR OP$ = "a" GOTO 320
  20. 190  IF OP$ = "T" OR OP$ = "t" GOTO 280
  21. 200  IF OP$ = "B" OR OP$ = "b" GOTO 240
  22. 210  IF OP$ = "Q" OR OP$ = "q" GOTO 420
  23. 220  PRINT "INVALID OPTION ENTERED"
  24. 230  GOTO 170
  25. 240  INPUT "ENTER DESIRED BOWLER NUMBER (999 TO QUIT):",B%
  26. 250  IF B% = 999 GOTO 170
  27. 260  GOSUB 460
  28. 270  GOTO 240
  29. 280  INPUT "ENTER DESIRED TEAM NUMBER (99 TO QUIT):",T%
  30. 290  IF T% = 99 GOTO 170
  31. 300  GOSUB 830
  32. 310  GOTO 280
  33. 320  GET #1,1
  34. 330  TEAMS% = CVI(TEAMS$)
  35. 340  BOWLERS% = CVI(BWLPERTM$)
  36. 350  MAXBO% = CVI(NXTID$) - 1
  37. 360  FOR T% = 1 TO TEAMS%
  38. 370  GOSUB 830
  39. 380  NEXT T%
  40. 390  FOR B% = 1 TO MAXBO%
  41. 400  GOSUB 460
  42. 410  NEXT B%
  43. 420  PRINT "Processing Completed - Returning to MENU"
  44. 430  CLOSE
  45. 440  RUN "A:MENU"
  46. 450  REM SUBROUTINE TO PRINT BOWLER RECORD SHEETS
  47. 460  LPRINT "                    BOWLER RECORD SHEET            ";DATE$
  48. 470  LPRINT " "
  49. 480  GET #2,B%
  50. 490  LPRINT BNAM$;"     HIGAM  HISER  HHGAM  HHSER"
  51. 500  LPRINT SPC(33);
  52. 510  LPRINT USING "   ####";CVI(BHIG$),CVI(BHIS$),CVI(BHIGH$),CVI(BHISH$)
  53. 520  LPRINT " "
  54. 530  LPRINT "                          GRAND"
  55. 540  LPRINT " DATE GAM1 GAM2 GAM3  TOT TOTAL GAM  AVG"
  56. 550  LPRINT "----- ---- ---- ----  --- ----- ---  ---"
  57. 560  GAM% = 0:PINS = 0
  58. 570  FOR TREC% = 1 TO CVI(BRCNT$)
  59. 580  REM RANDOMIZING ROUTINE FOR BOWLER DETAIL ADDRESSES
  60. 590  X = B% / 2: X% = CINT(X): Y% = X% * 2
  61. 600  WREC% = TREC%
  62. 610  IF Y% = B% THEN WREC% = TREC% + 50
  63. 620  BDET% = X% * 100 + WREC% - 100
  64. 630  REM END OF RANDOMIZING ROUTINE
  65. 640  GET #4,BDET%
  66. 650  G% = 3   'CALCULATE NUMBER OF GAMES BOWLED
  67. 660  IF CVI(BG1$) = 0 THEN G% = G% -1
  68. 670  IF CVI(BG2$) = 0 THEN G% = G% -1
  69. 680  IF CVI(BG3$) = 0 THEN G% = G% -1
  70. 690  GAM% = GAM% + G%
  71. 700  PINS = PINS + CVI(BSER$)
  72. 710  AVG = PINS / GAM%
  73. 720  AVG% = INT(AVG)
  74. 730  LPRINT USING "##";CVI(BMO$);
  75. 740  LPRINT "-";
  76. 750  LPRINT USING "## ";CVI(BDAY$);
  77. 760  LPRINT USING "#### ";CVI(BG1$),CVI(BG2$),CVI(BG3$),CVI(BSER$);
  78. 770  LPRINT USING "##### ";PINS;
  79. 780  LPRINT USING "###  ";GAM%,AVG%
  80. 790  NEXT TREC%
  81. 800  REM LPRINT CHR$(12)
  82. 810  RETURN
  83. 820  REM SUBROUTINE TO PRINT TEAM RECORD SHEETS
  84. 830  LPRINT "                     TEAM RECORD SHEET             ";DATE$
  85. 840  LPRINT " "
  86. 850  GET #1,T% + 1
  87. 860  LPRINT NAM$;"HI GAME:";CVI(HIG$);"   HI SERIES:";CVI(HIS$)
  88. 870  LPRINT " "
  89. 880  LPRINT "                  SEASON                      GRAND"
  90. 890  LPRINT " DATE  WON LOST  WON LOST GAM1 GAM2 GAM3  TOT TOTAL  GAM  AVG"
  91. 900  LPRINT "-----  --- ----  --- ---- ---- ---- ----  --- -----  ---  ---"
  92. 910  GAM%=0: PINS=0: TGW=0: TGL=0
  93. 920  FOR TREC% = 1 TO CVI(RCNT$)
  94. 930  REM RANDOMIZING ROUTINE FOR TEAM DETAIL ADDRESSES
  95. 940  X = T% / 2: X% = CINT(X): Y% = X% * 2
  96. 950  TWREC% = TREC%
  97. 960  IF Y% = T% THEN TWREC% = TREC% + 50
  98. 970  TDET% = X% * 100 + TWREC% - 100
  99. 980  REM END OF RANDOMIZING ROUTINE
  100. 990  GET #3,TDET%
  101. 1000  LPRINT USING "##";CVI(TMO$);
  102. 1010  LPRINT "-";
  103. 1020  LPRINT USING "##";CVI(TDAY$);
  104. 1030  GW=CVI(DPTSW$)/10: GL=4-GW: TGW=TGW+GW: TGL=TGL+GL
  105. 1040  LPRINT USING " ##.#";GW,GL,TGW,TGL;
  106. 1050  LPRINT USING " ####";CVI(TG1$),CVI(TG2$),CVI(TG3$),CVI(TSER$);
  107. 1060  PINS=PINS+CVI(TSER$): GAM%=GAM%+3: AVG=PINS/GAM%: AVG%=INT(AVG)
  108. 1070  LPRINT USING " #####";PINS;
  109. 1080  LPRINT USING " ####";GAM%,AVG%
  110. 1090  NEXT TREC%
  111. 1100  REM LPRINT CHR$(12)
  112. 1110  RETURN
  113.